package com.regent.central.bill.core.mrp;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import java.math.BigDecimal;
import java.util.Date;

@Table(name = "central_bill_material_purchase")
public class BillMaterialPurchase {
    @Id
    private String id;

    /**
     * 记录版本
     */
    private Integer version = 0;

    @Column(name = "date_created")
    private Date dateCreated = new Date();

    @Column(name = "date_updated")
    private Date dateUpdated;

    @Column(name = "time_deleted")
    private Long timeDeleted = 0L;

    /**
     * 老板组织ID
     */
    @Column(name = "boss_unit_id")
    private String bossUnitId;

    /**
     * 组织ID
     */
    @Column(name = "unit_id")
    private String unitId;

    /**
     * 采购单号
     */
    @Column(name = "order_no")
    private String orderNo;

    /**
     * 预计货期
     */
    @Column(name = "expect_date_end")
    private Date expectDateEnd;

    /**
     * 采购员
     */
    @Column(name = "creator_id")
    private String creatorId;

    /**
     * 采购员名称
     */
    @Column(name = "creator_name")
    private String creatorName;

    /**
     * 付款金额
     */
    @Column(name = "amount_pay")
    private BigDecimal amountPay;

    /**
     * 物料供应商ID
     */
    @Column(name = "supplier_id")
    private String supplierId;

    /**
     * 备注
     */
    private String remark;

    /**
     * 到料状态
     */
    @Column(name = "arrive_status")
    private Integer arriveStatus = 0;

    @Column(name = "date_purchase")
    private Date datePurchase = new Date();

    /**
     * @return id
     */
    public String getId() {
        return id;
    }

    /**
     * @param id
     */
    public void setId(String id) {
        this.id = id;
    }

    /**
     * 获取记录版本
     *
     * @return version - 记录版本
     */
    public Integer getVersion() {
        return version;
    }

    /**
     * 设置记录版本
     *
     * @param version 记录版本
     */
    public void setVersion(Integer version) {
        this.version = version;
    }

    /**
     * @return date_created
     */
    public Date getDateCreated() {
        return dateCreated;
    }

    /**
     * @param dateCreated
     */
    public void setDateCreated(Date dateCreated) {
        this.dateCreated = dateCreated;
    }

    /**
     * @return date_updated
     */
    public Date getDateUpdated() {
        return dateUpdated;
    }

    /**
     * @param dateUpdated
     */
    public void setDateUpdated(Date dateUpdated) {
        this.dateUpdated = dateUpdated;
    }

    /**
     * @return time_deleted
     */
    public Long getTimeDeleted() {
        return timeDeleted;
    }

    /**
     * @param timeDeleted
     */
    public void setTimeDeleted(Long timeDeleted) {
        this.timeDeleted = timeDeleted;
    }

    /**
     * 获取老板组织ID
     *
     * @return boss_unit_id - 老板组织ID
     */
    public String getBossUnitId() {
        return bossUnitId;
    }

    /**
     * 设置老板组织ID
     *
     * @param bossUnitId 老板组织ID
     */
    public void setBossUnitId(String bossUnitId) {
        this.bossUnitId = bossUnitId;
    }

    /**
     * 获取组织ID
     *
     * @return unit_id - 组织ID
     */
    public String getUnitId() {
        return unitId;
    }

    /**
     * 设置组织ID
     *
     * @param unitId 组织ID
     */
    public void setUnitId(String unitId) {
        this.unitId = unitId;
    }

    /**
     * 获取采购单号
     *
     * @return order_no - 采购单号
     */
    public String getOrderNo() {
        return orderNo;
    }

    /**
     * 设置采购单号
     *
     * @param orderNo 采购单号
     */
    public void setOrderNo(String orderNo) {
        this.orderNo = orderNo;
    }

    /**
     * 获取预计货期
     *
     * @return expect_date_end - 预计货期
     */
    public Date getExpectDateEnd() {
        return expectDateEnd;
    }

    /**
     * 设置预计货期
     *
     * @param expectDateEnd 预计货期
     */
    public void setExpectDateEnd(Date expectDateEnd) {
        this.expectDateEnd = expectDateEnd;
    }

    /**
     * 获取采购员
     *
     * @return creator_id - 采购员
     */
    public String getCreatorId() {
        return creatorId;
    }

    /**
     * 设置采购员
     *
     * @param creatorId 采购员
     */
    public void setCreatorId(String creatorId) {
        this.creatorId = creatorId;
    }

    /**
     * 获取采购员名称
     *
     * @return creator_name - 采购员名称
     */
    public String getCreatorName() {
        return creatorName;
    }

    /**
     * 设置采购员名称
     *
     * @param creatorName 采购员名称
     */
    public void setCreatorName(String creatorName) {
        this.creatorName = creatorName;
    }

    /**
     * 获取付款金额
     *
     * @return amount_pay - 付款金额
     */
    public BigDecimal getAmountPay() {
        return amountPay;
    }

    /**
     * 设置付款金额
     *
     * @param amountPay 付款金额
     */
    public void setAmountPay(BigDecimal amountPay) {
        this.amountPay = amountPay;
    }

    /**
     * 获取备注
     *
     * @return remark - 备注
     */
    public String getRemark() {
        return remark;
    }

    /**
     * 设置备注
     *
     * @param remark 备注
     */
    public void setRemark(String remark) {
        this.remark = remark;
    }

    public String getSupplierId() {
        return supplierId;
    }

    public void setSupplierId(String supplierId) {
        this.supplierId = supplierId;
    }

    public Integer getArriveStatus() {
        return arriveStatus;
    }

    public void setArriveStatus(Integer arriveStatus) {
        this.arriveStatus = arriveStatus;
    }

    public Date getDatePurchase() {
        return datePurchase;
    }

    public void setDatePurchase(Date datePurchase) {
        this.datePurchase = datePurchase;
    }
}